﻿using ErrorOr;
using Gnivc.CarDealership.Api.Domain.Entities;

namespace Gnivc.CarDealership.Api.Application.Abstractions.Repositories;

public interface IPriceRepository
{
    Task<ErrorOr<IEnumerable<Price>>> GetAllByVehicleAsync(Guid vehicleId);
    Task<ErrorOr<Price>> GetCurrentPriceAsync(Guid vehicleId);
    Task<ErrorOr<Created>> AddAsync(Price price);
    Task<ErrorOr<Updated>> UpdateAsync(Price price);
    Task<ErrorOr<Deleted>> DeleteAsync(Guid priceId);
}
